package com.yupi.project.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 权限校验
 
 * @description： 这段代码是一个Java注解，用于检查方法是否具有某种权限。注解的定义如下：
 * - `@Target(ElementType.METHOD)`：注解只能用于方法上。
 * - `@Retention(RetentionPolicy.RUNTIME)`：注解在运行时保留。
 * - `public @interface AuthCheck {... }`：注解的定义，包含一个方法 `mustRole()`。
 * 注解的 `mustRole()` 方法返回一个字符串，表示必须具有的角色。如果方法没有具有所需的角色，则可以使用此注解来检查。
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AuthCheck {

    /**
     * 必须有某个角色
     *
     * @return
     */
    String mustRole() default "";

}

